package com.youkeda.DesertCamel.service;

import com.youkeda.DesertCamel.model.EvaluateParam;
import com.youkeda.DesertCamel.model.Result;

/**
 * 评价操作
 *
 * @author: LiHang
 **/
public interface EvaluateService {

    /**
     * 添加一条评论
     *
     * @param evaluateParam
     * @return 是否成功
     */
    boolean insertEvaluate(EvaluateParam evaluateParam);

    /**
     * 根据发布时间查询所有评论
     *
     * @return 返回所有评论
     */
    Result queryAllEvaluateByTime();

    /**
     * 根据赞数量查询所有评论
     *
     * @return 返回所有评论
     */
    Result queryAllEvaluateByZan();

    /**
     * 根据发布时间查看本人所有评论
     *
     * @param userId 用户主键
     * @return 返回本人所有评论
     */
    Result queryMyEvaluateByTime(String userId);

    /**
     * 根据赞数量查看本人所有评论
     *
     * @param userId 用户主键
     * @return 返回本人所有评论
     */
    Result queryMyEvaluateByZan(String userId);

    /**
     * 删除某条评论
     *
     * @param evaluateId 评论主键
     * @return 是否成功
     */
    boolean deletEvaluate(String evaluateId);
}
